From ba16549664b44b047cc604f8383131bed907aa9f Mon Sep 17 00:00:00 2001
From: Matthew Owens <matthew@owens.tech>
Date: Thu, 1 Oct 2020 15:48:39 +0100
Subject: [PATCH] basic paddle movement

---
 src/main.c | 135 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
 src/main.o | Bin 3696 -> 30648 bytes
 2 files changed, 133 insertions(+), 2 deletions(-)

diff --git a/src/main.c b/src/main.c
index 0c0ce22..fb05761 100644
--- a/src/main.c
+++ b/src/main.c
@@ -1,10 +1,141 @@
 #include <stdio.h>
 #include "clogs.h"
 #include "vector.h"
+#include <SDL2/SDL.h>
+#include <stdbool.h>
+#include "timestep.h"
+
+typedef struct Colour {
+	Uint8 r;
+	Uint8 g;
+	Uint8 b;
+	Uint8 a;
+} Colour;
+
+typedef struct Box {
+	Colour c;
+	SDL_Rect r;
+} Box;
+
+static SDL_Window *window = NULL;
+static SDL_Renderer *renderer = NULL;
+static const Vec2d windowSize = { 1920, 1080 };
+static bool quit = false;
+static const float speed = 5.f;
+static const Colour bgClr = { 0x1c, 0x1c, 0x1c, 0xff };
+
+Box pad, ball;
+Box *vec_bricks = NULL;
+
+static void paddle_init()
+{
+	pad.r.w = 192;
+	pad.r.h = 32;
+
+	pad.r.x = (windowSize.x / 2) - (pad.r.w / 2);
+	pad.r.y = windowSize.y - ((windowSize.y / 8) - (pad.r.h / 2));
+
+	pad.c.r = pad.c.g = pad.c.b = 0x55;
+	pad.c.a = 0xff;
+
+	COUT("pad.r. (%d, %d, %d, %d)",
+		pad.r.x, pad.r.y, pad.r.w, pad.r.h);
+}
+
+static void paddle_render()
+{
+	SDL_SetRenderDrawColor(renderer, pad.c.r, pad.c.g, pad.c.b, pad.c.a);
+	SDL_RenderFillRect(renderer, &pad.r);
+}
+
+static void paddle_update(const Uint8* keyStates, float dt)
+{
+	if(keyStates[SDL_SCANCODE_LEFT] || keyStates[SDL_SCANCODE_A]) {
+		pad.r.x -= speed * dt;
+	}
+
+	if(keyStates[SDL_SCANCODE_RIGHT] || keyStates[SDL_SCANCODE_D]) {
+		pad.r.x += speed * dt;
+	}
+	// screen bounds check
+	if(pad.r.x + pad.r.w > windowSize.x) { pad.r.x = windowSize.x - pad.r.w; }
+	if(pad.r.x < 0 ) { pad.r.x = 0; }
+}
+
+static bool init()
+{
+	if(SDL_Init(
+		SDL_INIT_TIMER | SDL_INIT_VIDEO |  SDL_INIT_AUDIO | SDL_INIT_EVENTS
+		) < 0) {
+		COUT_ERR("SDL init failed! SDL_Error: %s", SDL_GetError());
+		return false;
+	}
+
+	window = SDL_CreateWindow("pong",
+			 SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED,
+			 windowSize.x, windowSize.y,
+			 SDL_WINDOW_INPUT_FOCUS | SDL_WINDOW_BORDERLESS);
+
+	if(window == NULL) {
+		COUT_ERR("Couldn't create window! SDL_Error: %s", SDL_GetError());
+		return false;
+	}
+
+	renderer = SDL_CreateRenderer(window, -1, SDL_RENDERER_ACCELERATED);
+
+	if(renderer == NULL) {
+		COUT_ERR("Couldn't create renderer! SDL_Error: %s", SDL_GetError());
+		return false;
+	}
+
+	ts_init(60.f);
+	paddle_init();
+	return true;
+}
+
+static void update()
+{
+	SDL_Event e;
+	int nPhysUpdates = 0;
+	const Uint8 *keyStates = SDL_GetKeyboardState(NULL);
+
+	ts_update();
+
+	while(SDL_PollEvent(&e) != 0){
+		if(e.type == SDL_QUIT) { quit = true; }
+	}
+
+	while(ts_phys_required(nPhysUpdates)){
+		paddle_update(keyStates, 1.f);
+		nPhysUpdates++;
+	}
+}
+
+static void render()
+{
+	SDL_SetRenderDrawColor(renderer, bgClr.r, bgClr.g, bgClr.b, bgClr.a);
+	SDL_RenderClear(renderer);
+	paddle_render();
+	SDL_RenderPresent(renderer);
+}
+
+static void cleanup()
+{
+	SDL_DestroyRenderer(renderer);
+	SDL_DestroyWindow(window);
+	SDL_Quit();
+}
 
 int main()
 {
-	printf("hello, world\n");
-	COUT("TEST");
+	//TODO: run on primary display
+	if(!init()) { return 1; }
+
+	while(!quit) {
+		update();
+		render();
+	}
+
+	cleanup();
 	return 0;
 }
diff --git a/src/main.o b/src/main.o
index afd1b90efa12f82506cda7327db9c4ca1630051b..667fbd2f1ade99abc93541b552b34d02bb830644 100644
GIT binary patch
literal 30648
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
D?Q{<T

literal 3696
zcmbVOdu&r>6hF6j-K(s0j0s}{YXS`7EMrW0EY3Y#x8i`g2bRUrwQFIxZiTkY;&X&W
za7tvn9C6?y0f{jYOh62Yj4fuy$cT?9_y9uC_?Hd{5|jkbx%WF=`RM-PB)#XH-+6rB
zJ?DJi?W+~lc7vh-lLEysrZEbTpE4$wXkrOu!enTudj0pR?T-`kCq1gRXX@-xVyEbF
zf*zVtlbVKFeSUu+&-#2I==VZ>MO{6#yVrG)7ev<{)zzpT>3?x(U|?Vn3^{LFcWzbE
z`m9IyEjo94vZ>p11?sA6W@L8{r+(14%DLeB(ynRF-Yd@9%?Zw~{YG!zt|h+|T8(?R
z?5J6A>0j$Vn^Wv7e_Wq8;^_~Wu5?<iXIer9Lk;WyDEab4`1C7YWv&-sPkyRZNmpi>
zGfb*E+nlaUO0rA=Fw6v#sTd&uRfx#|3A4eG0boo}RCBS(WO8IIF%_8>n-l~S=YVR?
zF##mmlqa%Ovu<%@P{xv}d&{!ODY+1x92tdKhN%E4isHy1H1#1&I}byNxF`9#8r38H
z-@BWen?0bI6TQuYUDE-~=b)_--Bfst0+s*FY53H7j9HXWumxKDfwiG|Bx$9$wNO3{
zw6%f(ql^lq5Z7pm(eTtsV@mQ#qq53iz+8y(ex?h7^+<oyTW3-S^DW&spT1^j|G4VL
z<<g$a(%Qp4!xm4~mRr3uGatOT^5F5+4|MhgIxCAF?)_`)r|CWA$BMpdZz^xwvUBCL
zmDdjJ&YXHEucq;UW5dtSbk|0PGEUAY$PJF>+>Cs!EF4Mp|9a+_^P_E_d+iA?{oQxb
zcOidbQP5s-{K@lq`#)T;yYF1%(Y=GIpF}<@IQ!0x(4O2|hFOy?d{dKKI5K=H*M9!p
z#<!O(`(ot6z_DGMpSx<AwtDGh*CwbeFJEGvQ@Olhu62ICt-z*Nda|g2@<J^r5sQ*N
zAt`wWzHAQS^dl;yN2%HJnxQ-`F@O%Fk3&?a1h{%9o>`4n^=_+*t&B%1W{O8D81I2;
zPYU9bgeBHPg~WUO2~Z*ao2U?T8N@`YAci#t)AOWBh_0$IaU9$-4vyzeB0QA%PCR|0
z7l=`B;$<lq2VXc2&gaABvNtR*uXn6i?sDO1Xcv~NvU){XX|-#G-CkEw@2W2?tFCat
z`i<d`ewJK;jbTiyQIg==;X?WL9i1i!oI05vgX8(vi2b?Z(<GcLGFRY~hkDHUxwEN=
z#ded|C7inU9{z}E4@8W&=_=m!Ix*fU^en-t1JMfuW!?|@(~pVoFV0gY3{-z2#_=N5
zs912ucM82i!haKbwS<ofy-vcD#K^cM{0E`8O88l!2PHgR<ms01SwioT@Y_P)A>rJ|
zeG)FzXn(j4^}=va^5^;<5xCr!VaZ?nOe6MfjK2|Onjxat`QaHR+(Hi|Ie&!?--BBP
zPBRiaCtwS0Y7e_T$iqRMx3U!U`Q5g#FA@fu*By3)%@YcNEf~-h&Fb}eHm-H8>sS*&
zA5C_9JV9S4x>2xzg6@vBJ_;Sf{OdY=9D?hCttHUj?(4v%Is##z4L<{qgu?EYHWB1&
zb*%}y+kN6K?w?sPlxoIx<xC|)(7q)MA{XNoMY2(%GhPx!bfJ}+h7{46)<25nGtcK~
zHe!U!UzF%YCE}UM>*t|?a^7$Je2k@>cg+CmyguFMu_Uig_ko7-iwS2wPjAEqqb#|>
zV#MOr?~<rriP#v;KlO;?xqeF#llO!WWDAhbJ7Gk!ZxdsjSn~onEF9+votfkYPBg^Z
zzg0N$`KSHUH-qDO{~HjK_k<AqB*4|A#E|UkM_au0Ys5ml4y{k$6?y%a5u=>>Y(SZ4
zk*GW0LpnMZ&->Vh1}&Z)1WyqI$=^*ja~$(t5zlt!Ir2aY1IMx7AruIc=hrIY7qO$@
z(rd!|h{vm6t8k31AKkGW&v?AGX(^{z|0}U!sssJIlH+M6;=QU>%zr7`V@afoLg^^Q
Pi|-N(9f^ACf*k)p(MMbw

-- 
2.20.1